/* =============================================================== */
/* Overwrite Foundation/Normalize defaults
================================================================ */
body { font-family: 'Cabin', sans-serif; font-weight: 400; font-size: 15px; }
body.sub-page { background: url(../images/background-texture.jpg); }
h1, h2, h3, h4, h5, h6 { font-family: 'Roboto Slab', serif; font-weight: 400; }
p, li { font-size: 14px; }
a, a:visited { color: #27AAE1; }
a:hover, a:focus { /*color: #BE1E2D;*/ }
strong { font-weight: 700; }
img { width: 100%; } /* IE9 fix for SVG images */
ul, ol, dl { font-family: 'Cabin', sans-serif; margin-left: 2.5rem; }
button, .button, a.button { 
  background: #27AAE1;
  border: 2px solid #27AAE1; 
  color: #FFFFFF;
  font-family: 'Roboto Slab', serif; 
  /*box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);*/
  transition: color 0.3s ease-out, background 0.3s ease-out; /* , box-shadow 0.3s cubic-bezier(.25,.8,.25,1); */
}
button:hover, button:focus, .button:hover, .button:focus, a.button:hover, a.button:focus { 
  color: #27AAE1;
  background: #FFFFFF; 
  background: transparent;
  /*box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);*/
}
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder, textarea:focus:-moz-placeholder { color:transparent; } /* FF 4-18 */
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder { color:transparent; } /* FF 19+ */
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder { color:transparent; } /* IE 10+ */
.row { max-width: 95%; }
.row.full-width { max-width: 100%; }

/* min-width 1441px, xlarge screens */
@media only screen and (min-width: 90.063em) {
	.row { max-width: 80rem; }
} 

/* =============================================================== */
/* Generic Content Styling 
================================================================ */
.site-wrapper { background: #ffffff; box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); margin: 0 auto; max-width: 80rem; width: 95%; }
.section-area { padding: 2.5rem 0; }
.section-area.footer-image { padding-bottom: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
.section-area.grey { background: #F0F0F0; }
.section-area.blue { background: #BCE0F6; }
.section-title { text-align: center; margin: 0 0 1rem 0; }
.section-title h2 { display: inline-block; padding: 15px; color: #27AAE1; /*border: 3px solid #231F20;*/ }
.section-title.dark h2 { color: #27235E; }
.section-desc { color: #999999; text-align: center; font-size: 1rem; margin-bottom: 50px; }
.section-desc.dark { color: #888888; }

.section-row { margin-bottom: 1.6rem; }
.section-text h2 { font-size: 1.2rem; text-transform: uppercase; color: #27AAE1; }
.section-text h4, .section-text h5 { color: #27AAE1; }
.section-text p, .section-text li { font-size: 14px; }
.section-text.centered { text-align: center; }
.section-text.centered ul, .section-text.centered ol, .section-text.centered dl { display: inline-block; }
.section-text.centered li { text-align: left; }
.section-image { margin-bottom: 2rem; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); }
.section-image p { color: #FFFFFF; background: #BE1E2D; padding: 0.4rem 0.8rem; font-size: 0.7rem; font-style: italic; text-align: center; }

.section-slogan { text-align: center; background: #231F20; padding: 15px; margin: 1rem 0; }
.section-slogan h3 { text-align: center; color: #FFFFFF; text-transform: uppercase; font-size: 20px; }

.sub-section-title { text-align: center;  }
.sub-section-title h3 { display: inline-block; color: #231F20; margin: 0; }
.sub-section-title h3:after { content: ""; display: block; height: 3px; background: #F78F1E; margin: 1.4rem auto 2rem auto; width: 100px; }
.sub-section-desc p { font-size: 1rem; text-align: center; margin-bottom: 50px; }

.section-popup { 
  display: block; 
  margin-bottom: 2rem; 
  background: #FFFFFF;
  box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
  transform: translateZ(0);
  transition: background 0.3s ease-out, box-shadow 0.3s cubic-bezier(.25,.8,.25,1), transform 0.3s ease-out;
}
.section-popup:hover {
  background: #414042;
  box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
  transform: translateY(-8px);
}
.section-popup.alt:hover { background: #BE1E2D; }
.section-popup h4 { 
  font-size: 14px;
  color: #FFFFFF; 
  background: #27AAE1; 
  margin: 0; 
  padding: 0.8rem 0.2rem; 
  display: flex; 
  text-align: center; 
  align-items: center; 
  justify-content: center; 
  transition: background 0.3s ease-out; 
}
.section-popup:hover h4 { background: #27235E; }
.section-popup.alt h4 { background: #414042; }
.section-popup p { 
  padding: 0.6rem; 
  color: #231F20; 
  text-align: center; 
  border-top: 2px solid transparent; 
  transition: border-color 0.3s ease-out, color 0.3s ease-out; 
  font-size: 0.8rem;
}
.section-popup:hover p { border-color: #FFFFFF; color: #FFFFFF; }

.item-with-icon { text-align: left; margin-bottom: 25px; }
.item-with-icon .item-icon, .item-with-icon .item-text { display: block; text-align: center; }
.item-with-icon .item-icon { vertical-align: top; }
.item-with-icon .item-text {  }

.item-with-icon .item-text h3 { font-size: 18px; color: #69675b; }
.white-text .item-with-icon .item-text h3 { color: #FFFFFF; }
.item-with-icon .item-text p { font-size: 18px; margin-bottom: 0.3rem; line-height: 1.4; }
.white-text .item-with-icon .item-text p { color: #FFFFFF; }

.item-with-icon .item-icon span { font-size: 72px; }
.item-with-icon .item-icon.blue span { color: #00AEEF; }
.item-with-icon .item-icon.purple span { color: #A41984; }
.item-with-icon .item-icon.red span { color: #D2232A; }
.item-with-icon .item-icon.orange span { color: #F78F1E; }
.item-with-icon .item-icon.yellow span { color: #FFDE00; }
.item-with-icon .item-icon.green span { color: #A1CC3A; }
.white-text .item-with-icon .item-icon span { color: #FFFFFF; }

.remodal-content-container { text-align: left; }
.remodal-content-container h2 { font-size: 1.6rem; margin: 1rem 0; color: #27AAE1; }
.remodal-content-container h2:after { background: #999999; content: ""; display: block; height: 3px; width: 80px; margin: 1rem 0 0 0; }
.remodal-content-container .remodal-profile-photo { display: inline-block; margin-bottom: 2rem; text-align: center; width: 100%; vertical-align: bottom; }
.remodal-content-container .remodal-profile-photo img { width: 100%; }
.remodal-content-container .remodal-profile-text { display: inline-block; width: 100%; }

.section-button { text-align: center; }
.section-button .button { display: inline-block; }

.overlay { position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.45); }

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
  .section-area { padding: 2.5rem 2rem; }
  .section-desc { font-size: 1.2rem; }
  .section-text h2 { font-size: 1.4rem; }
  .section-text p, .section-text li { font-size: 15px; }
  .section-text.centered ul, .section-text.centered ol, .section-text.centered dl { margin-left: 5rem; }
  .section-image p { font-size: 0.8rem; }
  .sub-section-desc p { font-size: 1.15rem; }
  .section-popup p { font-size: 0.9rem; }
  .remodal-content-container .remodal-profile-photo { margin-bottom: 20px; margin-right: 5%; width: 38%; }
  .remodal-content-container .remodal-profile-text { width: 55%; }
} 

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) {
  .section-area { padding: 4.5rem 3rem; }
  .section-desc { font-size: 1.6rem; }
  .section-text h2 { font-size: 18px; }
  .section-image p { font-size: 0.9rem; }
  .sub-section-desc p { font-size: 1.25rem; }
  .section-popup p { font-size: 1rem; }
}

/* =============================================================== */
/* Back to Top button
================================================================ */

.backtotop {
  position: fixed;
  right:0px;
  display:none;
  bottom: 20px;
  margin: 0 20px 0 0;
}

.backtotop a {
  text-decoration:none;
  border:0 none;
  display:block;
  width:45px;
  height:45px;
  background: #F79224;
  opacity: 0.4;
  -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  color: #FFFFFF;
  line-height: 40px;
  font-size: 20px;
}

.backtotop a:hover {background: #F79224; opacity: 0.8; }
.backtotop a i { margin: 0; padding-left: 9px; }

/* =============================================================== */
/* Header & Fixed/Sticky Navigation
================================================================ */
[data-magellan-expedition], [data-magellan-expedition-clone] { padding: 0; z-index: 200; }

.contact-bar { background: #ffffff; padding: 0.4rem 0; }
.contact-bar .fixed-logo img { display: block; max-width: 175px; width: 100%; margin: 0 auto; }
.contact-bar .fixed-contact ul { margin: 0; padding: 0; list-style-type: none; text-align: center; }
.contact-bar .fixed-contact li { display: block; padding: 0; font-size: 16px; }
.contact-bar .fixed-contact .fixed-address { margin-top: 1rem; }

.menu-bar .fixed-logo-grey { margin-top: 5px; }
.menu-bar .fixed-logo-grey img { display: none; margin: 0 auto; max-width: 175px; }
.fixed .menu-bar .fixed-logo-grey img { display: inline-block; }

.menu-bar { background: #BCE0F6; padding: 0.6rem 0; transition: padding 1s ease; }
.fixed .menu-bar { box-shadow: 0px 0px 10px #666666; }
.menu-bar ul { list-style-type: none; text-align: center; }
.menu-bar li { float: none; display: inline-block; }

.menu-bar .sub-nav dt a, 
.menu-bar .sub-nav dd a, 
.menu-bar .sub-nav li a { color: #222222; padding: 0.1875rem 0.4rem; font-family: 'Cabin', sans-serif; }
.menu-bar .sub-nav li.active a { background: #27235E; color: #FFFFFF; }
.menu-bar .sub-nav li.active a:hover { background: #595590; }

.nav-subpage .sub-nav li a:hover, .nav-subpage .fixed-top .sub-nav li a:focus { background: #27235E; color: #FFFFFF; border-radius: 3px; } 

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
  .contact-bar .fixed-logo img { margin: 0; }
  .contact-bar .fixed-contact ul { text-align: right; }
  .contact-bar .fixed-contact li { padding: 0 0 0 1.6rem; display: inline-block; }
  .contact-bar .fixed-contact .fixed-address { margin-top: 0; }
  .contact-bar .fixed-contact .fixed-email { display: none; }
} 

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) {
  .menu-bar ul { text-align: right; }
  .contact-bar .fixed-contact .fixed-email { display: inline-block; }
}

/* =============================================================== */
/* Intro Splash
================================================================ */
.intro { position: relative; margin: -4px 0 -7px 0; background-color: #BCE0F6; text-align: center; padding: 50px 0 0 0; }
.intro .hero-main { display: inline-block; width: 80vw; }
.intro .first-row, .intro .second-row, .intro .third-row { color: #32313b; font-family: 'Roboto Slab', serif; }
.intro .first-row { font-size: 26px; margin: 20px 0 40px 0; }
.intro .second-row { font-size: 16px; margin-bottom: 30px; }
.intro .third-row { font-size: 20px; font-weight: 700; margin-bottom: 70px; }
.blue-intro { background: #27235E; text-align: center; }
.blue-intro p { text-align: center; margin: 0; padding: 0; font-size: 1rem; color: #FFFFFF; }

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
  .intro .hero-main { width: 600px; }
  .intro .first-row { font-size: 40px; }
  .blue-intro p { font-size: 1.2rem; }
}

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) {
  .intro .hero-main { width: 750px; }
  .intro .first-row { font-size: 50px; }
  .intro .third-row { font-size: 32px; }
  .blue-intro p { font-size: 1.6rem; }
}

/* min-width 1441px, xlarge screens */
@media only screen and (min-width: 90.063em) {
  .intro .hero-main { width: 950px; }
  .intro .first-row { font-size: 60px; }
} 

/* min-width 1921px, xxlarge screens */
@media only screen and (min-width: 120.063em) {
  .intro .hero-main { width: 1000px; }
  .intro .first-row { font-size: 72px; }
}

/* =============================================================== */
/* SMSF
================================================================ */
.smsf-logo { box-shadow: none; }

/* =============================================================== */
/* Our Process
================================================================ */
.cd-timeline-content p.process-desc { margin-bottom: 25px; color: #666666; font-size: 17px; }

/* =============================================================== */
/* Pricing Tables
================================================================ */
.pricing-table { box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); border: none; }
.pricing-table ul { margin: 0; padding: 0; list-style-type: none; }
.pricing-table .title { 
  font-family: 'Roboto Slab', serif;
  font-size: 1.6375rem; 
  background-color: #27AAE1; 
  color: #FFFFFF; 
  padding: 0.8rem 0.5rem; 
  text-transform: uppercase;
}
.pricing-table .description { background: #303234; border-bottom: none; display: flex; align-items: center; }
.pricing-table .description h4 { color: #FFFFFF; line-height: 1.3; margin-bottom: 0.6rem; }
.pricing-table .description p { color: #d0d0d0; line-height: 1.3; margin-bottom: 0.3rem; }
.pricing-table .accordion { text-align: center; }
.pricing-table .accordion .accordion-navigation > a, .pricing-table .accordion dd > a { font-family: "Cabin", sans-serif; font-weight: 700; }
.pricing-table .accordion .accordion-navigation > a:after, .pricing-table .accordion dd > a:after {
  content: '\e814';
  display: block;
  width: 1rem;
  margin: 5px auto 0 auto;
  color: #27AAE1;
  font-family: fontello;
}
.pricing-table .accordion .accordion-navigation.active > a:after, .pricing-table .accordion dd.active > a:after { content: '\e811'; }
.pricing-table .accordion .accordion-navigation > .content, .pricing-table .accordion dd > .content { padding: 0; }
.pricing-table .bullet-item { line-height: 1.3; }
.pricing-table .price { font-family: "Roboto Slab", serif; text-transform: uppercase; color: #D83848; font-weight: 700; }
.pricing-table .price span { display: block; font-size: 0.9rem; color: #333333; font-weight: 400; }
.pricing-table .price span.top { margin-bottom: 0.4rem; }
.pricing-table .price span.bottom { margin-top: 0.4rem; }

/* =============================================================== */
/* FAQ
================================================================ */
.faq .accordion .accordion-navigation { background: #FFFFFF; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); margin-bottom: 1rem !important; }
.faq .accordion .accordion-navigation > a, .faq .accordion dd > a { 
  font-family: 'Cabin', sans-serif; 
  padding-right: 2rem;
}
.faq .accordion .accordion-navigation > a:after, .faq .accordion dd > a:after {
  content: '\e814';
  font-family: fontello;
  color: #27AAE1;
  position: absolute;
  right: 40px;
}
.faq .accordion .accordion-navigation.active > a:after, .faq .accordion dd.active > a:after { content: '\e811'; }
.faq .accordion .accordion-navigation ul { margin-bottom: 1.4rem; margin-left: 2rem; list-style-type: disc; }

/* =============================================================== */
/* About Us
================================================================ */
.staff-member-holder { position: relative; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); }
.staff-member-holder img { 
  border: 10px solid #FFFFFF; 
  margin: 0; width: 100%; 
  /*
  filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  filter: grayscale(100%);
  filter: gray;
  */
}
.staff-member-overlay { 
  background: rgba(0, 0, 0, 0.75); 
  width: 100%; 
  height: 100%;
  position: absolute;
  opacity: 0;
  text-align: center;
  transition: opacity 0.25s ease 0s;
  z-index: 100;
}
.staff-member-holder:hover .staff-member-overlay { opacity: 1; }
.staff-member-link { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 80px; margin: auto; }
.staff-member-link a {
  background: transparent;
  color: #FFFFFF;
  border-radius: 40px;
  border: 2px solid #FFFFFF;
  box-shadow: 3px 5px 6px 0 rgba(0, 0, 0, 0.1);
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  margin: 15px 0;
  min-width: 195px;
  padding: 15px 25px;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  transition: all 0.2s ease-in-out 0s;
  vertical-align: middle;
  z-index: 1;
}
.staff-member-link a:hover { color: #27AAE1; background: #FFFFFF; text-decoration: none; }
.staff-member-details { margin-bottom: 2rem; }
.staff-member-details h2 { text-align: center; font-size: 1.4rem; font-weight: 400; color: #27AAE1; margin: 0.6rem 0 0 0; }
.staff-member-details p { text-align: center; color: #747c83; }

/* =============================================================== */
/* Latest News
================================================================ */

.resource-item { text-align: left; margin-bottom: 25px; }
.resource-item .resource-icon, .resource-item .resource-text { display: inline-block; }
.resource-item .resource-icon { width: 18%; vertical-align: top; }
.resource-item .resource-text { width: 78%; }

.resource-item .resource-text h3 { font-size: 18px; }
.resource-item .resource-text p { font-size: 14px;  }

.resource-item .resource-icon span { font-size: 1.8rem; }

.resource-item.fintools .resource-icon span { color: #27AAE1; }
.resource-item.sftp .resource-icon span { color: #F78F1E; }
.resource-item.gencalc .resource-icon span { color: #27235E; }

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
  .resource-item .resource-icon span { font-size: 28px; }
  .other-services ul { text-align: center; }
  .other-services li { display: inline-block; margin: 0 20px; }
}

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) {
  .resource-item .resource-icon span { font-size: 36px; }
  .resource-item.big .resource-icon { width: 12%; }
  .resource-item.big .resource-text { width: 84%; }
}


.news-item-container { position: relative; }
.news-item-container:after { content: ''; display: block; height: 1px; width: 100%; margin: 0 0 25px 0; background: #AAAAAA; }
.news-item-container img { margin-bottom: 0.6rem; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); }
.news-title { font-size: 16px; font-weight: 700; margin-bottom: 0.3rem; line-height: 1.2; }
.news-description { margin-bottom: 0.2rem; font-size: 14px; }
.news-read-more { margin-bottom: 1rem; font-size: 12px; }
.read-more-articles { font-size: 1rem; font-style: italic; text-align: center; font-weight: 700; }

.latest-news ul { list-style-type: none; margin: 0; padding: 0; }
.latest-news li { margin-bottom: 1.4rem; }
.latest-news li a { font-size: 1.4rem; font-weight: 700; }
.latest-news li p { margin: 0; }

.market-watch { background: #FFFFFF; float: none; width: 315px; margin: 0 auto; display: block; }

/* News page */
.news-content-area img {
  width: 100%;
  max-width: 95%;
  display: block;
  /*margin-bottom: -60px;  remove this once the blank <p> tag bullshit from stripping social media scripts is fixed */
  margin-top: 35px;
}

.news-content-area h1 { margin: 40px 0; padding-bottom: 20px; font-size: 2.2rem; font-weight: 700; border-bottom: 2px solid #cccccc; }
.articledescription { font-size: 17px; font-weight: 700; margin-bottom: 2rem; line-height: 1.2; }
.news-content-area p, .news-content-area li { font-size: 16px; }

.newsindexheading { 
  display: block;
  color: #FFFFFF;
  background: #828282;
  line-height: 200%;
  margin: 0;
  padding: 0 1rem;
  font-size: 1.4375rem;
}

.news-sidebar { margin-top: 40px; }
.news-sidebar .menu-list { box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24); }
.aid38913 .news-sidebar h4:before { content: 'Accounting '; }
.aid38914 .news-sidebar h4:before { content: 'Financial Planning '; }
.news-sidebar h4 { padding: 0.7rem 1rem; background: #27AAE1; color: #FFFFFF; margin: 0; border-bottom: 5px solid #ffffff; }
.news-sidebar ul { margin: 0 0 2rem 0; padding: 0; list-style-type: none; }
.news-sidebar li { border-bottom: 1px solid #ffffff; }
.news-sidebar li:last-child { border-bottom: none; }
.news-sidebar a { 
  color: #222222;
  background: #dddddd;
  display: block;
  padding: 0.25rem 1rem;
  transition-duration: 0.3s;
  transition-property: background;
  transition-timing-function: ease-in-out;
}
.news-sidebar a:hover, .news-sidebar a:focus, .news-sidebar a.active { background: #a9a9a9; }

.news-share-links-top { margin-bottom: 2rem; }
.news-share-links-top p { display: inline-block; margin-bottom: 0; }
.news-share-links-top ul { display: inline-block; list-style-type: none; padding: 0; margin: 0; }
.news-share-links-top li { display: inline-block; margin-left: 5px; }
.news-share-links-top a { 
  display: block; 
  color: #FFFFFF; 
  width: 2rem; 
  height: 2rem; 
  line-height: 2rem; 
  border-radius: 50%; 
  transition: all 0.3s ease-in-out;
}
.news-share-links-top i { margin-left: 5px; font-size: 1rem; }

.news-share-links { text-align: center; margin-bottom: 2rem; }
.news-share-links p { font-weight: 700; font-size: 1.4rem; margin: 3rem 0 2rem 0; }
.news-share-links p:before { content: ''; display: block; width: 100%; height: 3px; background: #CCCCCC; margin-bottom: 2rem; }
.news-share-links ul { list-style-type: none; padding: 0; margin: 0; }
.news-share-links li { display: inline-block; margin: 0 0.4rem 10px 0.4rem; }
.news-share-links a { 
  display: block; 
  font-size: 1.8rem; 
  color: #FFFFFF; 
  width: 3.6rem; 
  height: 3.6rem; 
  line-height: 3.6rem; 
  border-radius: 50%; 
  transition: all 0.3s ease-in-out;
}

.news-share-links-top .share-fb, .news-share-links .share-fb { background: #4E69A2; } /* facebook */
.news-share-links-top .share-tw, .news-share-links .share-tw { background: #00ACED; } /* twitter */
.news-share-links-top .share-li, .news-share-links .share-li { background: #0976b4; } /* linkedin */
.news-share-links-top .share-em, .news-share-links .share-em { background: #69696e; } /* email */
.news-share-links-top .share-fb:hover, .news-share-links .share-fb:hover { background: #1B356F; } /* 20% darker */
.news-share-links-top .share-tw:hover, .news-share-links .share-tw:hover { background: #0079B8; } /* 20% darker */
.news-share-links-top .share-li:hover, .news-share-links .share-li:hover { background: #004280; } /* 20% darker */
.news-share-links-top .share-em:hover, .news-share-links .share-em:hover { background: #36363A; } /* 20% darker */

.news-form-container {
  padding: 1rem 1rem 0 1rem;
  background: #faf7f1;
  box-shadow: 0 1px 4px rgba(0,0,0,0.25);
  border-radius: 3px;
}
.news-form-container #commentForm { margin-top: 0; }

/* =============================================================== */
/* Contact Us
================================================================ */
.contact-us p { margin-bottom: 2rem; font-size: 0.9rem; }
.contact-us ul { list-style-type: none; margin: 0 0 2rem 0; }
.contact-us li { margin: 0 0 0.4rem 0; font-size: 0.9rem; }
.contact-us li i { color: #696986; }
.contact-us a, .contact-us a:visited { color: #222222; }
.contact-us a:hover, .contact-us a:focus { color: #27AAE1; }

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
  .contact-us p, .contact-us li { font-size: 1.1rem; }
} 

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) {
  .contact-us p, .contact-us li { font-size: 1.25rem; }
}

.contact-form { padding: 25px 0; }
.contact-form label { color: #414042; }
.contact-form input:not(.button), .contact-form textarea {
	color: rgba(105,105,105,0.7); 
	border-color: rgba(65,64,66,0.25); 
	-webkit-transition: border-color 0.5s linear 0s, background 0.5s linear 0s;
	-moz-transition: border-color 0.5s linear 0s, background 0.5s linear 0s;
	-o-transition: border-color 0.5s linear 0s, background 0.5s linear 0s;
	transition: border-color 0.5s linear 0s, background 0.5s linear 0s;
	box-shadow: none;
}
.contact-form input:focus:not(.button), .contact-form textarea:focus { border-color: rgba(19,134,169,0.5); color: rgba(105,105,105,1); }

.google-map iframe { pointer-events: none; }

#commentForm textarea { min-height: 120px; }
.t2 { display: none; } /* form spam check - do not remove */

/* =============================================================== */
/* Footer
================================================================ */
.footer-main { background: #414042; }
.footer-main h6 { color: #27AAE1; }
.footer-main p { color: #FFFFFF; }
.footer-main ul { margin-left: 0; list-style-type: none; }
.footer-main li { line-height: 1.1; }
.footer-main a { color: #F78F1E; }
.footer-main a:hover { text-decoration: underline; }

.footer-main-block { margin-bottom: 1.25rem; }

.footer-bottom { background: #303234; }
.footer-bottom p, .footer-bottom a { color: #FFFFFF; }
.footer-bottom a:hover { color: #FFFFFF; text-decoration: underline; }
.footer-bottom .copyright, .footer-bottom .site-by { text-align: center; }

.compliance-info { background: #FFFFFF; border-radius: 10px; }
.compliance-info img { max-width: 200px; margin: 0 auto 1rem auto; display: block; }
.compliance-info p { text-align: center; color: #222222; padding: 10px; }

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
  .footer-bottom .copyright { text-align: left; }
  .footer-bottom .site-by { text-align: right; }
}

/* =============================================================== */
/* JS Ticker
================================================================ */

.scrollingtext { position: absolute; }
#jsticker_scroll { position: relative; height: 40px; width: 100%; display: block; overflow: hidden; margin: 0 auto; background: #999999; }
#jsticker_scroll div { display: inline-block; margin: 0; }
#jsticker_scroll a { color: #FFFFFF; display: block; padding: 0 20px; line-height: 40px; }
#jsticker_scroll a:hover { text-decoration: underline; }
#jsticker_scroll .scrollingtext { white-space: nowrap; }

/* =============================================================== */
/* Remodal
================================================================ */

/* Full credit and many thanks to Vodka Bears */
/* http://vodkabears.github.io/remodal/ */

/* Hide scroll bar */
html.remodal-is-locked { /* overflow: hidden; */ } /* disabling this style prevents the 'shift right' effect when overlay opens */

/* Anti FOUC */
.remodal, [data-remodal-id] { display: none; }

/* Necessary styles of the overlay */
.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none;
}

/* Necessary styles of the wrapper */
.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch;
}

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: "";
}

/* Fix iPad, iPhone glitches */
.remodal-overlay, .remodal-wrapper { backface-visibility: hidden; }

/* Necessary styles of the modal dialog */
.remodal { position: relative; text-size-adjust: 100%; }

/* Disable Anti-FOUC */
.remodal-is-initialized { display: inline-block; }

/* remodal-default-theme.css start */

/* Default theme styles for the background */
.remodal-bg.remodal-is-opening, .remodal-bg.remodal-is-opened { -webkit-filter: blur(3px); filter: blur(3px); }
.remodal-bg { height: 100%; /* hack to blur entire bg, not sure why needed */ }

/* Default theme styles of the overlay */
.remodal-overlay { background: rgba(43, 46, 56, 0.5); }

.remodal-overlay.remodal-is-opening, .remodal-overlay.remodal-is-closing { animation-fill-mode: forwards; }
.remodal-overlay.remodal-is-opening { animation: remodal-overlay-opening-keyframes 0.3s; }
.remodal-overlay.remodal-is-closing { animation: remodal-overlay-closing-keyframes 0.3s; }

/* Default theme styles of the wrapper */
.remodal-wrapper { padding: 10px 10px 0; }

/* Default theme styles of the modal dialog */
.remodal {
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 10px;
  padding: 35px;
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff;
}

.remodal p, .remodal li { font-size: 0.85rem; }

.remodal.remodal-is-opening, .remodal.remodal-is-closing { animation-fill-mode: forwards; }
.remodal.remodal-is-opening { animation: remodal-opening-keyframes 0.3s; }
.remodal.remodal-is-closing { animation: remodal-closing-keyframes 0.3s; }

/* Vertical align of the modal dialog */
.remodal, .remodal-wrapper:after { vertical-align: middle; }

/* Close button */
.remodal-close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  overflow: visible;
  width: 35px;
  height: 35px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  border: 0;
  outline: 0;
  background: transparent;
}
.remodal-close:hover { color: #2b2e38; }
.remodal-close:before {
  font-family: Arial, "Helvetica CY", "Nimbus Sans L", sans-serif !important;
  font-size: 25px;
  line-height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 35px;
  content: "\00d7";
  text-align: center;
}

/* Dialog buttons */
.remodal-confirm, .remodal-cancel {
  font: inherit;
  display: inline-block;
  overflow: visible;
  min-width: 110px;
  margin: 0;
  padding: 12px 0;
  cursor: pointer;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border: 0;
  outline: 0;
}
.remodal-confirm { color: #fff; background: #81c784; }
.remodal-confirm:hover { background: #66bb6a; }
.remodal-cancel { color: #fff; background: #e57373; }
.remodal-cancel:hover { background: #ef5350; }

/* Remove inner padding and border in Firefox 4+ for the button tag. */
.remodal-confirm::-moz-focus-inner, .remodal-cancel::-moz-focus-inner { padding: 0; border: 0; }

/* Keyframes
   ========================================================================== */
@keyframes remodal-opening-keyframes {
  from {
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    transform: none;
    opacity: 1;
  }
}
@keyframes remodal-closing-keyframes {
  from {
    transform: scale(1);
    opacity: 1;
  }
  to {
    transform: scale(0.95);
    opacity: 0;
  }
}
@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

/* IE8
   ========================================================================== */
.lt-ie9 .remodal-overlay { background: #2b2e38; }
.lt-ie9 .remodal { width: 700px; }


/* Media queries
   ========================================================================== */

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) {
  .remodal { max-width: 700px; }
} 

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) {
  .remodal { max-width: 900px; }
  .remodal p, .remodal li { font-size: 1rem; }
}

/* min-width 1441px, xlarge screens */
@media only screen and (min-width: 90.063em) {
  .remodal { max-width: 1100px; }
} 

/* =============================================================== */
/* Vertical Timeline
================================================================ */

/* Full credit and many thanks to CodyHouse */
/* https://codyhouse.co/gem/vertical-timeline/ */

.cd-container {
  /* this class is used to give a max-width to the element it is applied to, and center it horizontally when it reaches that max-width */
  width: 90%;
  max-width: 1170px;
  margin: 0 auto;
}
.cd-container::after {
  /* clearfix */
  content: '';
  display: table;
  clear: both;
}

/* -------------------------------- 

Main components 

-------------------------------- */
#cd-timeline {
  position: relative;
  padding: 2em 0;
  margin-top: 2em;
  margin-bottom: 2em;
}
#cd-timeline::before {
  /* this is the vertical line */
  content: '';
  position: absolute;
  top: 0;
  left: 18px;
  height: 100%;
  width: 4px;
  background: #d7e4ed;
}
@media only screen and (min-width: 1170px) {
  #cd-timeline {
    margin-top: 0;
    margin-bottom: 3em;
  }
  #cd-timeline::before {
    left: 50%;
    margin-left: -2px;
  }
}

.cd-timeline-block {
  position: relative;
  margin: 2em 0;
}
.cd-timeline-block:after {
  content: "";
  display: table;
  clear: both;
}
.cd-timeline-block:first-child {
  margin-top: 0;
}
.cd-timeline-block:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 1170px) {
  .cd-timeline-block {
    margin: 4em 0;
  }
  .cd-timeline-block:first-child {
    margin-top: 0;
  }
  .cd-timeline-block:last-child {
    margin-bottom: 0;
  }
}

.cd-timeline-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  box-shadow: 0 0 0 4px white, inset 0 2px 0 rgba(0, 0, 0, 0.08), 0 3px 0 4px rgba(0, 0, 0, 0.05);
}
.cd-timeline-img img {
  display: block;
  width: 24px;
  height: 24px;
  position: relative;
  left: 50%;
  top: 50%;
  margin-left: -12px;
  margin-top: -12px;
}
.cd-timeline-img.cd-red { background: #BE1E2D; }
.cd-timeline-img.cd-orange { background: #F78F1E; }
.cd-timeline-img.cd-grey { background: #999999; }

@media only screen and (min-width: 1170px) {
  .cd-timeline-img {
    width: 60px;
    height: 60px;
    left: 50%;
    margin-left: -30px;
    /* Force Hardware Acceleration in WebKit */
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden;
  }
  .cssanimations .cd-timeline-img.is-hidden {
    visibility: hidden;
  }
  .cssanimations .cd-timeline-img.bounce-in {
    visibility: visible;
    -webkit-animation: cd-bounce-1 0.6s;
    -moz-animation: cd-bounce-1 0.6s;
    animation: cd-bounce-1 0.6s;
  }
}

@-webkit-keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(1.2);
  }

  100% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -moz-transform: scale(0.5);
  }

  60% {
    opacity: 1;
    -moz-transform: scale(1.2);
  }

  100% {
    -moz-transform: scale(1);
  }
}
@keyframes cd-bounce-1 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
  }

  100% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
.cd-timeline-content {
  position: relative;
  margin-left: 60px;
  background: #e9f0f5;
  border-radius: 0.25em;
  padding: 1em;
  box-shadow: 0 3px 0 #d7e4ed;
}
.cd-timeline-content:after {
  content: "";
  display: table;
  clear: both;
}
.cd-timeline-content h2 { color: #303e49; font-size: 16px; margin-bottom: 10px; }
.cd-timeline-content p { margin-bottom: 5px; }
.cd-timeline-content .cd-read-more, .cd-timeline-content .cd-date {
  display: inline-block;
}
.cd-timeline-content .cd-read-more {
  float: right;
  padding: .8em 1em;
  background: #acb7c0;
  color: white;
  border-radius: 0.25em;
}
.no-touch .cd-timeline-content .cd-read-more:hover {
  background-color: #bac4cb;
}
.cd-timeline-content .cd-date {
  float: left;
  padding: .8em 0;
}
.cd-timeline-content::before {
  content: '';
  position: absolute;
  top: 16px;
  right: 100%;
  height: 0;
  width: 0;
  border: 7px solid transparent;
  border-right: 7px solid white;
}
@media only screen and (min-width: 1170px) {
  .cd-timeline-content {
    margin-left: 0;
    padding: 1.6em;
    width: 45%;
  }
  .cd-timeline-content h2 { font-size: 20px; }
  .cd-timeline-content::before {
    top: 24px;
    left: 100%;
    border-color: transparent;
    border-left-color: #e9f0f5;
  }
  .cd-timeline-content .cd-read-more {
    float: left;
  }
  .cd-timeline-content .cd-date {
    position: absolute;
    width: 100%;
    left: 122%;
    top: 2px;
    font-size: 16px;
    font-size: 1rem;
    padding: 0;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
  }
  .cd-timeline-content .cd-date.cd-date-01 { background: #003770; }
  .cd-timeline-content .cd-date.cd-date-02 { background: #284E84; }
  .cd-timeline-content .cd-date.cd-date-03 { background: #546D9D; }
  .cd-timeline-content .cd-date.cd-date-04 { background: #8192B8; }
  .cd-timeline-content .cd-date img { display: inline-block; }
  .cd-timeline-block:nth-child(even) .cd-timeline-content {
    float: right;
  }
  .cd-timeline-block:nth-child(even) .cd-timeline-content::before {
    top: 24px;
    left: auto;
    right: 100%;
    border-color: transparent;
    border-right-color: #e9f0f5;
  }
  .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-read-more {
    float: right;
  }
  .cd-timeline-block:nth-child(even) .cd-timeline-content .cd-date {
    left: auto;
    right: 122%;
    text-align: right;
  }
  .cssanimations .cd-timeline-content.is-hidden {
    visibility: hidden;
  }
  .cssanimations .cd-timeline-content.bounce-in {
    visibility: visible;
    -webkit-animation: cd-bounce-2 0.6s;
    -moz-animation: cd-bounce-2 0.6s;
    animation: cd-bounce-2 0.6s;
  }
}

@media only screen and (min-width: 1170px) {
  /* inverse bounce effect on even content blocks */
  .cssanimations .cd-timeline-block:nth-child(even) .cd-timeline-content.bounce-in {
    -webkit-animation: cd-bounce-2-inverse 0.6s;
    -moz-animation: cd-bounce-2-inverse 0.6s;
    animation: cd-bounce-2-inverse 0.6s;
  }
}
@-webkit-keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }

  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100px);
  }

  60% {
    opacity: 1;
    -moz-transform: translateX(20px);
  }

  100% {
    -moz-transform: translateX(0);
  }
}
@keyframes cd-bounce-2 {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100px);
    -moz-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    -o-transform: translateX(-100px);
    transform: translateX(-100px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }

  100% {
    -webkit-transform: translateX(0);
  }
}
@-moz-keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -moz-transform: translateX(100px);
  }

  60% {
    opacity: 1;
    -moz-transform: translateX(-20px);
  }

  100% {
    -moz-transform: translateX(0);
  }
}
@keyframes cd-bounce-2-inverse {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100px);
    -moz-transform: translateX(100px);
    -ms-transform: translateX(100px);
    -o-transform: translateX(100px);
    transform: translateX(100px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}





/* Define mobile styles */
@media only screen { } 

/* max-width 640px, mobile-only styles, use when QAing mobile issues */
@media only screen and (max-width: 40em) { } 

/* min-width 641px, medium screens */
@media only screen and (min-width: 40.063em) { } 

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) { } 

/* min-width 1441px, xlarge screens */
@media only screen and (min-width: 90.063em) { } 

/* min-width 1921px, xxlarge screens */
@media only screen and (min-width: 120.063em) { } 